ยุคของ การประมวลผลแบบสมมาตร—ซึ่งหนึ่งโปรเซสเซอร์ทำงานทุกงาน—ได้ถึงขีดจำกัดทางกายภาพแล้ว ปัจจุบันเราอาศัยอยู่ใน โลกที่หลากหลาย ซึ่งประสิทธิภาพเกิดจากความร่วมมือของฮาร์ดแวร์เฉพาะทาง: GPU สำหรับการประมวลผลแบบไหล (throughput), FPGA สำหรับตรรกะ และ DSP สำหรับการประมวลผลสัญญาณ
1. การเปลี่ยนผ่านสู่ความหลากหลาย
ผลประโยชน์ด้านการประมวลผลในยุคใหม่ไม่ได้อยู่ที่การเพิ่มความเร็วของนาฬิกา (clock speed) แต่อยู่ที่การรวมเอา อุปกรณ์เร่งความเร็วระบบแบบหลากหลายใช้ โฮสต์ (โดยทั่วไปเป็นโปรเซสเซอร์หลายแกน) เพื่อจัดการงานต่างๆ บนอุปกรณ์ที่หลากหลาย อุปกรณ์ประมวลผลแต่ละตัวมีลักษณะเฉพาะด้านหน่วยความจำและลักษณะการทำงานที่แตกต่างกัน
2. โมเดลอุปกรณ์ OpenCL
OpenCL (ภาษาการคำนวณเปิด) ให้เฟรมเวิร์กที่รวมไว้เพื่อจัดการความหลากหลายนี้ มันมองอุปกรณ์ทุกชิ้นเป็น อุปกรณ์ แบ่งออกเป็น หน่วยประมวลผล (CU)ผ่านชั้น ชั้นแพลตฟอร์มนักพัฒนาสามารถสอบถามความสามารถเฉพาะอุปกรณ์ เช่น ความเร็วนาฬิกาและขนาดหน่วยความจำ ในขณะรันโปรแกรม ทำให้โค้ดเดียวกันสามารถปรับตัวได้กับผู้ผลิตที่ต่างกัน
3. ความสะดวกในการนำพาเทียบกับประสิทธิภาพ
แม้จะเป็นไปได้ที่จะทำให้ ความสะดวกในการนำโค้ดไปใช้งานได้ทุกแพลตฟอร์ม (เขียนเคอร์เนลเดียวเพื่อใช้กับผู้ผลิตทุกเจ้า) แต่พลังที่แท้จริงอยู่ที่ ประสิทธิภาพที่นำไปใช้ได้ทั่วทั้งแพลตฟอร์มซึ่งมอบอำนาจควบคุมระดับละเอียดให้นักพัฒนา เพื่อปรับแต่งการดำเนินงานให้เหมาะสมกับลักษณะเฉพาะของสถาปัตยกรรมแต่ละแพลตฟอร์ม